import { vi } from 'vitest'

// Mock Pinia
export const createPinia = vi.fn(() => ({
  install: vi.fn(),
  use: vi.fn()
}))

// Mock defineStore
export const defineStore = vi.fn((id, options) => {
  return () => ({
    id,
    ...options,
    $reset: vi.fn(),
    $patch: vi.fn(),
    $subscribe: vi.fn(),
    $dispose: vi.fn()
  })
})

// Mock storeToRefs
export const storeToRefs = vi.fn((store) => {
  return new Proxy({}, {
    get(_, key) {
      return store[key]
    }
  })
})
